//
// Created by Administrator on 2021/11/9.
// test program
//

#include "Geometry.hpp"

#include <iostream>

int main()
{
    Mat4x4f M(3, 0, 0, 5,
              0, 3, 0, 3,
              0, 0, 9, 5,
              0, 0, 0, 1);

    std::cout << M << std::endl;

    std::cout << "=======================" << std::endl;

    float determinant = 0.0f;
    Mat4x4f MI = M.inverse_adj(&determinant);

    std::cout << determinant << std::endl;

    std::cout << "=======================" << std::endl;

    std::cout << MI << std::endl;

    std::cout << "=======================" << std::endl;

    std::cout << M * MI << std::endl;

    return 0;
}